package chaoyue.study;

import lombok.extern.slf4j.Slf4j;
import org.apache.poi.xwpf.usermodel.*;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

/**
 * 创建一个Word文件并写入
 */
@Slf4j
public class CreateWordDocument {
    public static void main(String[] args) throws IOException {
        File file = new File("/Users/chaoyue/Downloads/test.docx");
        try (XWPFDocument document = new XWPFDocument();
             FileOutputStream fos = new FileOutputStream(file)) {
            // 创建段落
            XWPFParagraph paragraph = document.createParagraph();
            // 创建一个具有相同属性的文本域（类似一个div）可以进行字体和样式的设置
            XWPFRun run = paragraph.createRun();
            run.setBold(true);
            run.setFontSize(20);
            run.setColor("00aabb");
            run.setText("测试Word文档写入操作");

            // 创建表格
            XWPFTable table = document.createTable();
            // 设置表格属性
            table.setWidth("50%");
            // 获取第一行第一列(这个在表格创建完成之后默认就有) 并写入
            XWPFTableRow row = table.getRow(0);
            XWPFTableCell cell = row.getCell(0);
            cell.setText("第一列");
            // 创建第二列
            row.addNewTableCell().setText("第二列");
            // 创建第二行
            table.createRow();

            // 写入文件
            document.write(fos);
        } catch (IOException e) {
            log.error("文件处理失败");
        }
    }
}
